<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <meta name="author" content="彭俊超">
    <title>简易日历讲解</title>
    <style>
        *{
            box-sizing: border-box;
        }
        .box{
        width:250px;
        margin:50px auto;
        background-color:#aaa;
        padding:5px;
        }
        ul{
            margin: 0px;
            padding: 0px;
            list-style: none;
        }
        li{
            width:50px;
            height:50px;
            border:1px solid black;
            float:left;
            margin:5px;
            text-align:center;
            color:white;
            background-color:black;
        }
        .message{
            border: 1px solid #eee;
            margin:5px;
            padding:5px;
        }
        .message h2{
            margin:0px;
            font-size:16px;
        }
        p{
            margin:0px;
            font-size:14px;
        }
        /*清除浮动  */
        .clearfix::after{
            content:'';
            clear:both;
            display:block;
            height: 0px;
            visibility: hidden;
        }
        li strong{
            display: block;
        }
        /*定义一个类名，负责展示选定的样式  */
        .active{
            color:red;
            background-color:white;
        }
    </style>
</head>

<body>
    <div class="box">
        <ul class="clearfix">
            <li><strong>1</strong>JAN</li>
            <li><strong>2</strong>FEB</li>
            <li><strong>3</strong>MAR</li>
            <li><strong>4</strong>APR</li>
            <li><strong>5</strong>MAY</li>
            <li><strong>6</strong>JUN</li>
            <li><strong>7</strong>JUL</li>
            <li><strong>8</strong>AUG</li>
            <li><strong>9</strong>SEP</li>
            <li class="active"><strong>10</strong>OVT</li>
            <li><strong>11</strong>NOV</li>
            <li><strong>12</strong>DEC</li>
        </ul>
        <div class="message">
            <h2><strong>10</strong>月节日</h2>
            <p>国庆节：10月1日至7日放假7天。</p>
        </div>
    </div>
</body>

</html>
<script>
window.onload = function(){
    var lis = document.querySelectorAll('li');
    var strong = document.querySelector('.message strong')
    var p = document.querySelector('.message p')
    // 方法一：
    // 在事件中找触发事件的目标元素：this  ev.target
    // for(var i = 0; i < lis.length; i++){
    //     lis[i].index = i;
    //     lis[i].onmouseover = function(ev){
    //         // 触发事件之后,先把所有的li标签的类名清空
    //         for(var i = 0; i < lis.length; i++){
    //             lis[i].className = '';
    //         }

    //         // console.log(ev.target);
    //         // 找到选中的li标签添加active类名
    //         this.className = 'active';
    //         strong.innerHTML = this.index + 1;
    //         p.innerHTML = msg[this.index];
    //     }
    // }
    var msg = [
		"元旦：1月1日至3日放假三天。",
        "春节：2月2日至8日放假7天。",
        "妇女节：3月8日妇女节，与我无关。",
        "清明节：4月3日至5日放假3天",
        "劳动节：4月30日至5月2日放假3天。",
        "端午节：6月4日至6日放假3天。",
        "小暑：7月7日小暑。不放假。",
        "七夕节：8月6日七夕节。不放假。",
        "中秋节：9月10日至12日放假3天。",
        "国庆节：10月1日至7日放假7天。",
        "立冬：11月8日立冬。不放假。",
        "艾滋病日:12月1日<br />废除奴隶制国际日:12月2日。"
	];

    // 方法二：
    // 找到上一个显示白色背景的li标签，把它的active去掉，然后把当前选中的li标签加上active类名
    var lastIndex = 9;  //记录上一个白色背景li标签的索引值
     for(var i = 0; i < lis.length; i++){
        lis[i].index = i;
        lis[i].onmouseover = function(ev){
        // 把上一个白色背景的li标签的active类名去掉
            lis[lastIndex].className = '';
        //  找到当前选中的li标签添加active类名
            this.className = 'active';
             strong.innerHTML = this.index + 1;
             p.innerHTML = msg[this.index];
        }
        lis[i].onmouseout = function(){
            // 相对于上一步 当鼠标出来时，记录上一个选中的li标签的索引值
            lastIndex = this.index;
        }
    }
}
</script>